<script>
// app.js
var http = require('./utils/http.js')
var util = require('./utils/util.js')
import { AppType } from './utils/constant.js'

export default {
  onLaunch: function (options) {
    // console.log('mall4j.v220808')
    // #ifdef H5
    uni.getSystemInfo({
      success: function (res) {
        // 客户端平台，值域为：ios、android
        if (res.platform == 'ios') {
          uni.setStorageSync('iosUrl', window.location.href.split('#')[0])
        }
      }
    })
    // 判断浏览器环境
    var ua = navigator.userAgent.toLowerCase()
    if (ua.search(/MicroMessenger/i) > -1 && !uni.getStorageSync('appType')) {
      // 微信环境
      uni.setStorageSync('appType', AppType.MP)
    } else if (ua.search(/Alipay/i) > -1 && !uni.getStorageSync('appType')) {
      // 支付宝环境
      uni.setStorageSync('appType', AppType.ALI)
    } else {
      if (!uni.getStorageSync('appType')) {
        uni.setStorageSync('appType', AppType.H5)
      }
    }
    // #endif

    // APP模式下保持竖屏
    // #ifdef APP-PLUS
    plus.screen.lockOrientation('portrait-primary')
    uni.getSystemInfo({
      success: (sysInfo) => {
        if (sysInfo.platform == 'android') {
          uni.setStorageSync('appType', AppType.ANDROID)
        } else {
          uni.setStorageSync('appType', AppType.IOS)
        }
      }
    })
    // #endif

    // #ifdef MP-WEIXIN
    uni.setStorageSync('appType', AppType.MINI)
    // #endif

    // #ifdef MP-ALIPAY
    uni.setStorageSync('appType', AppType.ALI)
    // #endif

    // 微信环境统一登录方法
    util.weChatLogin()

    // #ifdef MP-WEIXIN
    // 微信小程序检查升级
    this.checkMiniUpdate()
    // #endif

    setTimeout(() => {
      // 设置登录后的跳转地址
      util.setRouteUrlAfterLogin()
    }, 1500)

    // 初始加载获取配置
    util.getUniWebConfig()
  },
  onShow: function () { },
  globalData: {
    // 定义全局请求队列
    requestQueue: [],
    // 是否正在进行登陆
    isLanding: false,
    // 购物车商品数量
    totalCartCount: 0,
    // 当前请求数量
    currentReqCounts: 0
  },
  methods: {
    /**
     * 微信小程序检查升级
     */
    checkMiniUpdate () {
      const updateManager = wx.getUpdateManager()
      updateManager.onCheckForUpdate(function (res) {
        // 请求完新版本信息的回调
        console.log(res.hasUpdate)
      })

      updateManager.onUpdateReady(function () {
        wx.showModal({
          title: '更新提示',
          content: '新版本已经准备好，是否重启应用？',
          success: function (res) {
            if (res.confirm) {
              // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
              updateManager.applyUpdate()
            }
          }
        })
      })

      updateManager.onUpdateFailed(function () {
        // 新版本下载失败
        uni.showToast({
          title: '新版本下载失败,请重试',
          duration: 2000,
          icon: 'none'
        })
      })
    }
  }
}
</script>
<style >
@import "./app.css";

/* 隐藏头部 */
uni-page-head {
  display: none;
}

/* 轮播图指示点 */
uni-swiper .uni-swiper-dots-horizontal {
  bottom: 20px !important;
}

/* 新增底部tab挡住左侧分类tab点击 */
.uni-tabbar-bottom {
  bottom: 0 !important;
}
</style>
